home *** CD-ROM | disk | FTP | other *** search
/ Sprite 1984 - 1993 / Sprite 1984 - 1993.iso / lib / tex / inputs / draftcite.sty < prev    next >
Text File  |  1991-05-20  |  2KB  |  55 lines

  1. %     D R A F T C I T E . S T Y 
  2. %
  3. %     Copyright (C) 1989 by Donald Arseneau
  4. %     These macros may be freely transmitted, reproduced, or modified for
  5. %     non-commercial purposes provided that this notice is left intact.
  6. %     
  7. %  Use the label instead of the number for citations, as if
  8. %  \bibitem[name]{name}{....}, but write the proper citation number to
  9. %  the aux file. Ignore spaces before the \cite, inserting an ordinary
  10. %  interword space. 
  11. %
  12. %  Pull out the code that writes the aux file citation and gives the name.
  13. %  \citen can be used by itself to give citation name without the other 
  14. %  formatting; e.g., "See also ref.~\citen{junk}" gives "See also ref. junk".
  15. %
  16. \def\citen#1{%
  17. \if@filesw \immediate \write \@auxout {\string \citation {#1}}\fi 
  18. \def\@citea{}%
  19. \@for \@citeb:=#1\do {\@citea
  20.   \@ifundefined {b@\@citeb}%
  21.     {{\bf \expandafter\@citeverb\expandafter{\@citeb}?}%
  22.     \@warning {Citation `\@citeb ' on page \thepage \space undefined}}%
  23. % else, defined
  24.     {\expandafter\@citeverb\expandafter{\@citeb}}%
  25.   \def\@citea{, }%
  26. }}
  27. %     Replacement for \@citex:
  28. \def\@citex[#1]#2{\leavevmode\unskip
  29.    \ \@cite{\citen{#2}}{#1}\spacefactor\@m}%
  30. %
  31. %  Give the citation tag as the label (even if another label is specified)
  32. %
  33. \def\@lbibitem[#1]#2{\item[\@biblabel{\@citeverb{#2}}]\if@filesw
  34.       {\def\protect##1{\string ##1\space}%
  35.       \immediate\write\@auxout{\string\bibcite{#2}{#1}}\fi\ignorespaces}}
  36.  
  37. \def\@bibitem#1{\item[\@biblabel{\@citeverb{#1}}]\stepcounter{\@listctr}%
  38.        \if@filesw \immediate\write\@auxout
  39.        {\string\bibcite{#1}{\the\c@enumi}}\fi\ignorespaces}
  40.  
  41. \def\@citeverb#1{%
  42.    \expandafter \expandafter \expandafter \@gobble  %  do \csname, \string, ...
  43.    \expandafter \string\csname#1\endcsname}         %  \@gobble, in that order.
  44.  
  45. \endinput
  46. %
  47. %  Send problem reports to asnd@triumfcl.bitnet or Arseneau@mtsg.ubc.ca
  48. %
  49. %  Test integrity of file:
  50. %  brackets: round, square, curly, angle:   () [] {} <>
  51. %  backslash, slash, vertical, at, dollar, and: \ / | @ $ &
  52. %  hat, grave, acute (apostrophe), quote, tilde:   ^ ` ' " ~
  53.